<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>1.栈</title>
		<script type="text/javascript" src="../js/stack/stack.js"></script>
		<script type="text/javascript" src="../js/stack/stack-use.js"></script>
	</head>
	<body>
		<h1>请打开控制台查看测试结果！</h1>
		
		<script>
			
			console.log('----------1.1 测试基于JavaScript数组创建的栈----------');
			
			console.log('创建StackArray类的实例stackArrayh栈');
			const stackArray = new StackArray();
			console.log('给stackArray栈添加元素：111');
			stackArray.push(111);
			console.log('给stackArray栈添加元素：222');
			stackArray.push(222);
			console.log('stackArray栈的长度为：' + stackArray.size());
			console.log('查看stackArray栈顶元素：' + stackArray.peek());
			console.log('从stackArray栈顶移除元素：' + stackArray.pop());
			console.log('stackArray栈的长度为：' + stackArray.size());
			console.log('清空stackArray栈的元素：' + stackArray.clear());
			console.log('检查stackArray栈是否为空：' + stackArray.isEmpty());
			
			console.log('----------1.2 测试基于JavaScript对象创建的栈----------');
			
			console.log('创建Stack类的实例stack栈');
			const stack = new Stack();
			console.log('给stack栈添加元素：111');
			stack.push(111);
			console.log('给stack栈添加元素：222');
			stack.push(222);
			console.log('stack栈的长度为：' + stack.size());
			console.log('查看stack栈顶元素：' + stack.peek());
			console.log('从stack栈顶移除元素：' + stack.pop());
			console.log('stack栈的长度为：' + stack.size());
			console.log('清空stack栈的元素：' + stack.clear());
			console.log('检查stack栈是否为空：' + stack.isEmpty());
			
			console.log('----------1.3 用栈解决问题----------');

			console.log('----------1.3.1 十进制转二进制----------');
			
			console.log('将十进制1000转换为二进制：' + decimalToBinary(1000));
			console.log('将十进制9999转换为二进制：' + decimalToBinary(9999));
			
			console.log('----------1.3.2 十进制转换成基数为2~36的任意进制----------');
			
			console.log('将十进制1000转换为二进制：' + baseConverter(1000, 2));
			console.log('将十进制1000转换为八进制：' + baseConverter(1000, 8));
			console.log('将十进制1000转换为十六进制：' + baseConverter(1000, 16));
			
		</script>
	</body>
</html>